Technological advances in computer hardware, software and networking have lead to increased demand for electronic information exchange rather than through conventional techniques such as paper correspondence, for example. Such electronic communication can provide split-second, reliable data transfer between essentially any two locations throughout the world. Many industries and consumers are leveraging such technology to improve efficiency and decrease cost through web-based (e.g., on-line) services. For example, consumers can purchase goods, review bank statements, research products and companies, obtain real-time stock quotes, download brochures, etc. with the click of a mouse and at the convenience of home.
In particular, modern game-play devices have developed capabilities of powerful computers as integrated circuit technology has become more advanced and incorporated into such game-play devices. Where traditional game-play devices ran exclusively on removable media, such as floppy discs, compact discs (CDs), digital video discs (DVDs), etc., and interaction with such games was solely by way of a joystick or other game control device, modern game-play systems are not so limited. Rather, a modern device can utilize powerful network and computing applications such as e-mail, instant messaging, web browsing, digital video recording, and the like. Additionally, gaming has progressed to an online arena, where players can synchronize their gaming systems with other players via an online server, and communicate, coordinate, and interface with other remote players while playing a game.
Within such online arenas, network connectivity falls into either a client-server architecture (e.g., users communicate with a large, well-provisioned dedicated server) or a peer-to-peer (P2P) architecture (e.g., users communicate with each other directly or via a peer). Peer-to-peer architectures and networking environments have grown considerably in population and use. In a peer-to-peer environment, many applications require the selection of another peer in the network that can provide services via a network connection, such as serving as the central coordinator for a multiplayer game. In these situations we refer to the peer that is searching for services as a “client” and a potential peer that can provide these services as a “host.” Additionally, in a peer-to-peer network there can be particular services, such as multiplayer game play, in which one or more “clients” connect to each other via a “host” intermediary, where both host and client are peers rather than a dedicated well-provisioned centrally located server. An individual peer might act as both a “host” and a “client” for different connections. In particular, effective selection or matchmaking of a client to a host based on network path quality (NPQ) can impact connectivity there between. In other words, good network connectivity between a client and a matched host can enable optimal use of a peer-to-peer networking environment.